import { apiClient } from 'axiom-view';

/**
 * @description 知识库查询预设管理相关的API
 */
export const presetApi = {
  /**
   * 根据知识库组合获取预设列表
   * @param {string[]} kb_ids - 知识库ID列表
   * @returns {Promise<ApiResponse<QueryPresetVO[]>>}
   */
  getByKbIds(kb_ids) {
    const params = new URLSearchParams();
    kb_ids.forEach(id => params.append('kb_ids', id));
    
    return apiClient.get('/knowledge-query-presets', {
      params
    });
  },

  /**
   * 创建查询预设
   * @param {QueryPresetCreateDTO} data - 预设创建数据
   * @returns {Promise<ApiResponse<QueryPresetVO>>}
   */
  create(data) {
    return apiClient.post('/knowledge-query-presets', data);
  },

  /**
   * 更新查询预设
   * @param {number} preset_id - 预设ID
   * @param {QueryPresetUpdateDTO} data - 预设更新数据
   * @returns {Promise<ApiResponse<QueryPresetVO>>}
   */
  update(preset_id, data) {
    return apiClient.put(`/knowledge-query-presets/${preset_id}`, data);
  },

  /**
   * 删除查询预设
   * @param {number} preset_id - 预设ID
   * @returns {Promise<ApiResponse<null>>}
   */
  delete(preset_id) {
    return apiClient.delete(`/knowledge-query-presets/${preset_id}`);
  },
  
  /**
   * 设置为默认预设
   * @param {number} preset_id - 预设ID
   * @returns {Promise<ApiResponse<null>>}
   */
  setDefault(preset_id) {
    return apiClient.post(`/knowledge-query-presets/${preset_id}/default`);
  },
}; 